ডাটা বাইন্ডিং (ইন্টারপোলেশন, প্রোপার্টি বাইন্ডিং, ইভেন্ট বাইন্ডিং, টু-ওয়ে বাইন্ডিং)

Web Development - অ্যাঙ্গুলার (Angular) - Angular কম্পোনেন্টস |
2
2

ডাটা বাইন্ডিং Angular অ্যাপ্লিকেশনের একটি গুরুত্বপূর্ণ বৈশিষ্ট্য, যার মাধ্যমে আপনি কম্পোনেন্টের ডেটা ও UI (User Interface) এর মধ্যে সম্পর্ক তৈরি করতে পারেন। ডাটা বাইন্ডিং মূলত ডেটা এবং UI এর মধ্যে একে অপরকে আপডেট করার প্রক্রিয়া। Angular-এ বিভিন্ন ধরনের ডাটা বাইন্ডিং রয়েছে, যেমন ইন্টারপোলেশন (Interpolation), প্রোপার্টি বাইন্ডিং (Property Binding), ইভেন্ট বাইন্ডিং (Event Binding) এবং টু-ওয়ে বাইন্ডিং (Two-way Binding)


1. ইন্টারপোলেশন (Interpolation)

ইন্টারপোলেশন হলো Angular এর একটি ডাটা বাইন্ডিং পদ্ধতি, যেখানে কম্পোনেন্টের প্রোপার্টির মানকে HTML টেম্পলেটের মধ্যে সন্নিবেশিত করা হয়। এটি সাধারণত {{ }} (কুর্লি ব্র্যাকেটস) সাইন ব্যবহার করে।

উদাহরণ:

<h1>{{ title }}</h1>

এখানে {{ title }} কম্পোনেন্টের title প্রপার্টি থেকে মান নিয়ে টেম্পলেটের মধ্যে প্রদর্শিত হবে।

ব্যবহার:

  • সাধারণত UI তে ডাইনামিক ডেটা প্রদর্শন করতে ব্যবহৃত হয়।
  • শুধুমাত্র এক দিকে (কম্পোনেন্ট থেকে UI) ডেটা প্রবাহিত হয়।

2. প্রোপার্টি বাইন্ডিং (Property Binding)

প্রোপার্টি বাইন্ডিং একটি Angular বৈশিষ্ট্য, যার মাধ্যমে আপনি কম্পোনেন্টের ডেটাকে HTML ট্যাগের প্রপার্টির সাথে বাইন্ড করতে পারেন। প্রোপার্টি বাইন্ডিং করতে [ ] (স্কয়ার ব্র্যাকেট) ব্যবহার করা হয়।

উদাহরণ:

<img [src]="imageUrl">

এখানে [src] হল প্রোপার্টি বাইন্ডিং, যা imageUrl কম্পোনেন্টের প্রপার্টি থেকে মান নিয়ে img ট্যাগের src অ্যাট্রিবিউট হিসেবে ব্যবহার করবে।

ব্যবহার:

  • প্রপার্টি বাইন্ডিং ব্যবহার করে আপনি HTML এলিমেন্টের অ্যাট্রিবিউটগুলির মান পরিবর্তন করতে পারেন।
  • এটি এক দিকে (কম্পোনেন্ট থেকে DOM) ডেটা প্রবাহিত করে।

3. ইভেন্ট বাইন্ডিং (Event Binding)

ইভেন্ট বাইন্ডিং Angular-এ একটি পদ্ধতি, যার মাধ্যমে আপনি HTML এলিমেন্টে একটি ইভেন্ট (যেমন: ক্লিক, কীবোর্ড ইভেন্ট, ইত্যাদি) হ্যান্ডল করার জন্য কম্পোনেন্টের মেথড কল করতে পারেন। এটি ( ) (প্যারেনথেসিস) ব্যবহার করে।

উদাহরণ:

<button (click)="onClick()">Click Me</button>

এখানে (click) হল ইভেন্ট বাইন্ডিং, যা ব্যবহারকারীর ক্লিক ইভেন্টকে onClick() মেথডের সাথে যুক্ত করবে।

ব্যবহার:

  • এটি ইভেন্ট হ্যান্ডলিংয়ের জন্য ব্যবহৃত হয়, যেমন ক্লিক, মাউসওভার ইত্যাদি।
  • এটি এক দিকে (UI থেকে কম্পোনেন্টে) ডেটা প্রবাহিত করে।

4. টু-ওয়ে বাইন্ডিং (Two-way Binding)

টু-ওয়ে বাইন্ডিং হলো একটি পদ্ধতি যার মাধ্যমে কম্পোনেন্টের ডেটা এবং UI একে অপরের সাথে সিঙ্ক্রোনাইজ থাকে। অর্থাৎ, যখন UI তে কোনো পরিবর্তন হয়, তখন তা কম্পোনেন্টে প্রতিফলিত হয় এবং vice versa। Angular-এ ngModel ডিরেক্টিভ ব্যবহার করে টু-ওয়ে বাইন্ডিং করা হয়।

উদাহরণ:

<input [(ngModel)]="name">
<p>{{ name }}</p>

এখানে [(ngModel)] হল টু-ওয়ে বাইন্ডিং, যেখানে name প্রপার্টি ইনপুট ফিল্ডের মান পরিবর্তন হলে আপডেট হবে এবং ইনপুট ফিল্ডে name প্রপার্টির মান পরিবর্তন হলে তা UI তে প্রদর্শিত হবে।

ব্যবহার:

  • ইউজারের ইনপুট এবং কম্পোনেন্টের ডেটা একে অপরের সাথে সিঙ্ক্রোনাইজ করতে টু-ওয়ে বাইন্ডিং ব্যবহৃত হয়।
  • এটি ngModel ব্যবহার করে করা হয়, যেটি সাধারণত ফর্ম ইনপুট, চেকবক্স, রেডিও বাটন ইত্যাদি ক্ষেত্রে ব্যবহৃত হয়।

বাইন্ডিং পদ্ধতির তুলনা

বাইন্ডিং টাইপসিঙ্ক্রোনাইজেশনব্যবহারের উদাহরণ
ইন্টারপোলেশনকম্পোনেন্ট থেকে UI{{ title }}
প্রোপার্টি বাইন্ডিংকম্পোনেন্ট থেকে DOM[src]="imageUrl"
ইভেন্ট বাইন্ডিংUI থেকে কম্পোনেন্ট(click)="onClick()"
টু-ওয়ে বাইন্ডিংকম্পোনেন্ট ↔ UI[(ngModel)]="name"

উপসংহার

Angular ডাটা বাইন্ডিং পদ্ধতিগুলি খুবই শক্তিশালী এবং এই পদ্ধতিগুলির মাধ্যমে আপনি UI এবং কম্পোনেন্টের ডেটার মধ্যে সম্পর্ক তৈরি করতে পারেন। এগুলি ব্যবহার করে আপনি একটি ডাইনামিক এবং ইন্টারঅ্যাকটিভ অ্যাপ্লিকেশন তৈরি করতে পারেন, যেখানে কম্পোনেন্টের ডেটা স্বয়ংক্রিয়ভাবে UI তে প্রতিফলিত হয় এবং ব্যবহারকারীর ইনপুটের মাধ্যমে ডেটা পরিবর্তিত হয়।

Content added By
Promotion